package com.chinaedu.oc.dao.product;

import com.chinaedu.oc.bo.ProductQuery;
import com.chinaedu.oc.po.product.Product;
import com.chinaedu.oc.util.plugin.PageParams;

import java.util.List;

public interface ProductDao {

	/**
	 * 插入产品
	 * @Description: TODO
	 * @param @param product    
	 * @return void    返回类型 
	 * @throws
	 */
	void insertProduct(Product product);
	/**
	 * 
	 * @Description: 通过id删除产品
	 * @param @param id    
	 * @return void    返回类型 
	 * @throws
	 */
	void deleteProductById(String id);
	/**
	 * 
	 * @Description: 更新产品信息（覆盖）
	 * @param @param product    
	 * @return void    返回类型 
	 * @throws
	 */
	void updateProductById(Product product);
	/**
	 * 
	 * @Description: 根据id查出产品
	 * @param @param id
	 * @param @return    
	 * @return Product    返回类型 
	 * @throws
	 */
	Product selectProductById(String id);
	/**
	 * 
	 * @Description: 查选所有产品
	 * @param @return    
	 * @return List<Product>    返回类型 
	 * @throws
	 */
	List<Product> selectProductAll();
	/**
	 * 
	 * @Description: 根据条件分页查询产品
	 * @param @param params
	 * @param @return    
	 * @return List<Product>    返回类型 
	 * @throws
	 */
	List<Product> selectProductByField(PageParams<Product> params);
	/**
	 * 
	 * @Description: 根据条件更新产品信息
	 * @param @param product    
	 * @return void    返回类型 
	 * @throws
	 */
	int updateProductByField(Product product);

}
